home *** CD-ROM | disk | FTP | other *** search
/ PC Plus SuperCD (UK) 1998 August / PC Plus SuperCD 50a Issue 142 (CD142a) (August 1998).iso / trial / demon / TURNPIKE.1 / CLASSES.ZIP / JAVA / LANG / Integer.class (.txt) < prev    next >
Encoding:
Java Class File  |  1997-04-14  |  2.7 KB  |  183 lines

  1. package java.lang;
  2.  
  3. public final class Integer extends Number {
  4.    public static final int MIN_VALUE = -2147483648;
  5.    public static final int MAX_VALUE = 2147483647;
  6.    private int value;
  7.  
  8.    public static String toString(int var0, int var1) {
  9.       if (var1 < 2 || var1 > 36) {
  10.          var1 = 10;
  11.       }
  12.  
  13.       StringBuffer var2 = new StringBuffer(var1 >= 8 ? 12 : 33);
  14.       boolean var3 = var0 < 0;
  15.       if (!var3) {
  16.          var0 = -var0;
  17.       }
  18.  
  19.       while(var0 <= -var1) {
  20.          var2.append(Character.forDigit(-(var0 % var1), var1));
  21.          var0 /= var1;
  22.       }
  23.  
  24.       var2.append(Character.forDigit(-var0, var1));
  25.       if (var3) {
  26.          var2.append('-');
  27.       }
  28.  
  29.       StringBuffer var4 = var2.reverse();
  30.       return new String(var4);
  31.    }
  32.  
  33.    public static String toHexString(int var0) {
  34.       return toUnsignedString(var0, 4);
  35.    }
  36.  
  37.    public static String toOctalString(int var0) {
  38.       return toUnsignedString(var0, 3);
  39.    }
  40.  
  41.    public static String toBinaryString(int var0) {
  42.       return toUnsignedString(var0, 1);
  43.    }
  44.  
  45.    private static String toUnsignedString(int var0, int var1) {
  46.       StringBuffer var2 = new StringBuffer(var1 >= 3 ? 11 : 32);
  47.       int var3 = 1 << var1;
  48.       int var4 = var3 - 1;
  49.  
  50.       do {
  51.          var2.append(Character.forDigit(var0 & var4, var3));
  52.          var0 >>>= var1;
  53.       } while(var0 != 0);
  54.  
  55.       StringBuffer var5 = var2.reverse();
  56.       return new String(var5);
  57.    }
  58.  
  59.    public static String toString(int var0) {
  60.       return toString(var0, 10);
  61.    }
  62.  
  63.    public static int parseInt(String var0, int var1) throws NumberFormatException {
  64.       if (var0 == null) {
  65.          throw new NumberFormatException("null");
  66.       } else {
  67.          int var2 = 0;
  68.          boolean var3 = false;
  69.          int var4 = 0;
  70.          int var5 = var0.count;
  71.          if (var5 <= 0) {
  72.             throw new NumberFormatException(var0);
  73.          } else {
  74.             if (var0.charAt(0) == '-') {
  75.                var3 = true;
  76.                ++var4;
  77.             }
  78.  
  79.             while(var4 < var5) {
  80.                int var6 = Character.digit(var0.charAt(var4++), var1);
  81.                if (var6 < 0) {
  82.                   throw new NumberFormatException(var0);
  83.                }
  84.  
  85.                var2 = var2 * var1 + var6;
  86.             }
  87.  
  88.             return var3 ? -var2 : var2;
  89.          }
  90.       }
  91.    }
  92.  
  93.    public static int parseInt(String var0) throws NumberFormatException {
  94.       return parseInt(var0, 10);
  95.    }
  96.  
  97.    public static Integer valueOf(String var0, int var1) throws NumberFormatException {
  98.       return new Integer(parseInt(var0, var1));
  99.    }
  100.  
  101.    public static Integer valueOf(String var0) throws NumberFormatException {
  102.       return new Integer(parseInt(var0, 10));
  103.    }
  104.  
  105.    public Integer(int var1) {
  106.       this.value = var1;
  107.    }
  108.  
  109.    public Integer(String var1) throws NumberFormatException {
  110.       this.value = parseInt(var1, 10);
  111.    }
  112.  
  113.    public int intValue() {
  114.       return this.value;
  115.    }
  116.  
  117.    public long longValue() {
  118.       return (long)this.value;
  119.    }
  120.  
  121.    public float floatValue() {
  122.       return (float)this.value;
  123.    }
  124.  
  125.    public double doubleValue() {
  126.       return (double)this.value;
  127.    }
  128.  
  129.    public String toString() {
  130.       int var1 = this.value;
  131.       return toString(var1, 10);
  132.    }
  133.  
  134.    public int hashCode() {
  135.       return this.value;
  136.    }
  137.  
  138.    public boolean equals(Object var1) {
  139.       if (var1 != null && var1 instanceof Integer) {
  140.          Integer var2 = (Integer)var1;
  141.          return this.value == var2.value;
  142.       } else {
  143.          return false;
  144.       }
  145.    }
  146.  
  147.    public static Integer getInteger(String var0) {
  148.       return getInteger(var0, (Integer)null);
  149.    }
  150.  
  151.    public static Integer getInteger(String var0, int var1) {
  152.       Integer var2 = getInteger(var0, (Integer)null);
  153.       return var2 == null ? new Integer(var1) : var2;
  154.    }
  155.  
  156.    public static Integer getInteger(String var0, Integer var1) {
  157.       String var2 = System.getProperty(var0);
  158.       if (var2 != null) {
  159.          try {
  160.             return decode(var2);
  161.          } catch (NumberFormatException var3) {
  162.          }
  163.       }
  164.  
  165.       return var1;
  166.    }
  167.  
  168.    private static Integer decode(String var0) throws NumberFormatException {
  169.       if (var0.startsWith("0x", 0)) {
  170.          String var3 = var0.substring(2, var0.count);
  171.          return new Integer(parseInt(var3, 16));
  172.       } else if (var0.startsWith("#", 0)) {
  173.          String var2 = var0.substring(1, var0.count);
  174.          return new Integer(parseInt(var2, 16));
  175.       } else if (var0.startsWith("0", 0) && var0.count > 1) {
  176.          String var1 = var0.substring(1, var0.count);
  177.          return new Integer(parseInt(var1, 8));
  178.       } else {
  179.          return new Integer(parseInt(var0, 10));
  180.       }
  181.    }
  182. }
  183.